// This is a javascript file

var foo = "bar";
var mueve = false;
var proceso;
var W3CDOM = (document.createElement && document.getElementsByTagName);

function cambiarColor(a,b)
{
    var boton = document.getElementById(a);
    if(b==1)
        boton.className="botonEncendido";
    else
        boton.className="botonApagado";
    return true;
}
function ocultar(nombre)
{
    document.getElementById(nombre).className = "divOculto";
}
function mostrar(nombre)
{
    document.getElementById(nombre).className = "divMostrado";
}

function realizarAccion(cadena)
{
    document.getElementById('accionSeleccionada').value = cadena;
    
    document.getElementById("botonSubmit").click();
}
function hacerPrincipal(cadena,foto)
{
    document.getElementById('accionSeleccionada').value = cadena;
    document.getElementById('imagenSeleccionada').value = foto;
    document.getElementById("botonSubmit").click();
}
function realizarAccionAnadirHijo(cadena,cadenaAux)
{
    document.getElementById('accionSeleccionada').value = cadena;
    document.getElementById('parejaSeleccionada').value = cadenaAux;
    document.getElementById("botonSubmit").click();
}

function mostrarFechaDefuncion()
{
    document.getElementById("anadirFecha").className="divOculto";
    document.getElementById("fechaDefuncion").className="divMostrado";
    document.getElementById("mensajeDefuncion").className="divMostrado";
    document.getElementById("muerto").value = "si";
}
function ocultarFechaDefuncion()
{
    document.getElementById("anadirFecha").className = "divMostrado";
    document.getElementById("fechaDefuncion").className = "divOculto";
    document.getElementById("mensajeDefuncion").className="divOculto  ";
    document.getElementById("muerto").value = "no";
}


function desplazamiento(vert,horiz)
{
    if(mueve){        
        
        document.getElementById("divPadre").scrollTop += vert;
        document.getElementById("divPadre").scrollLeft += horiz;
        
         
    }
    
}

function desplaza(vert,horiz)
{
    
    mueve = true;
    proceso = setInterval("desplazamiento("+ vert.toString() + ", "+ horiz.toString() + ")", 50);
}

function noscroll()
{
    mueve = false;    
    clearInterval(proceso);
}

function abreInvitacion(boton)
{
    document.getElementById("invitacion").className = "divModalExterior";
    document.getElementsByName("correoElectronico")[0].value = '';
    document.getElementsByName("mensaje")[0].value = '';
   
}

function cierraInvitacion(id){
    document.getElementById(id).className = 'divOculto';
}

function redimensiona()
{
    var alto = screen.height - 78 - 141 -300;
    
    document.getElementById("divMedio").style.height = alto.toString() + "px";
    //alto.toString() + " px";
    
}

function oculta(simbolo,div)
{
    if (simbolo.innerHTML == "+")
    {
        simbolo.innerHTML = "-";
        document.getElementById(div).style.display="block";
         
    }
    else{
        simbolo.innerHTML = "+";
        document.getElementById(div).style.display="none";
        
        
    }
            
}

function AbrirMenuAnadirImagen(ev)
{
    
    var px, py, cadena, obj;
    if (!document.all)
    {
        event = ev;
        py = ev.pageY;
        px = ev.pageX;
    }
    else{
        py = event.clientY +document.body.scrollTop;
        px = event.clientX +document.body.scrollLeft;
    }
       
    document.getElementById("divFoto").style.left = px.toString() + "px";
    document.getElementById("divFoto").style.top = py.toString() + "px" ; 
    document.getElementById("divFoto").style.visibility ="visible";
}

function CerrarMenuAnadirImagen()
{
    document.getElementById("divFoto").style.visibility ="hidden";
}


function copiarText(textOrigen,idDestino){
    var texto = textOrigen.value;
    document.getElementById(idDestino).value = texto;
}

function menuAnadirAlbum(enlace,id, texto){
    
    
    var aux = new String(enlace.innerHTML);
    if (aux.toLowerCase().indexOf("cerrar", 0) != -1){
        document.getElementById(id).style.display = "none";
        enlace.innerHTML = texto;
    }
    else{
        
        document.getElementById(id).style.display = "block";
        enlace.innerHTML = "Cerrar";
    }
    
}





var getCalendario = null;
var xmlCalendario = null;
var CualMes=0;

function CrearCalendario(QueMes){
    if (window.XMLHttpRequest){
        getCalendario=new XMLHttpRequest()
    }else if (window.ActiveXObject){
        getCalendario=new ActiveXObject("Microsoft.XMLHTTP")
    }
    if (getCalendario){
        var url="Calendario.jsp";
        getCalendario.onreadystatechange=CambioDeEstado;
        getCalendario.open("GET",url,true);
        getCalendario.send(null);
        CualMes=QueMes;
    }else{
        alert ("Tu explorador no soporta XMLHttpRequest");
    }
}

function CambioDeEstado(){
    if (getCalendario.readyState == 4){
        xmlCalendario = getCalendario.responseXML;
        xmlCalendario = xmlCalendario.getElementsByTagName('cita');
        setCal(CualMes);
                   
    }     
} 

function bisiesto(Anio) {
    if (Anio % 4 == 0)
	return true
    return false
}

function diasPorMes(mes, Anio) {
    var meses = new Array(12)
    meses[1] = 31; // Enero
    meses[2] = (((Anio % 4 == 0) && (Anio % 100 != 0)) || (Anio % 400 == 0)) ? 29 : 28
    meses[3] = 31 // Marzo
    meses[4] = 30 // Abril
    meses[5] = 31 // Mayo
    meses[6] = 30 // Junio
    meses[7] = 31 // Julio
    meses[8] = 31 // Agosto
    meses[9] = 30 // Septiembre
    meses[10] = 31 // Octubre
    meses[11] = 30 // Noviembre
    meses[12] = 31 // Diciembre
    return meses[mes]
}

function getNombreDelMes(mes) {
    var meses = new Array(12)
    meses[1] = "Enero"
    meses[2] = "Febrero"
    meses[3] = "Marzo"
    meses[4] = "Abril"
    meses[5] = "Mayo"
    meses[6] = "Junio"
    meses[7] = "Julio"
    meses[8] = "Agosto"
    meses[9] = "Septiembre"
    meses[10] = "Octubre"
    meses[11] = "Noviembre"
    meses[12] = "Diciembre"
    return meses[mes]
}

function setCal(QueMes) {
       
    var now = new Date()
    var anio = now.getYear()
    if (anio < 1000) {anio+=1900}
    var mes = now.getMonth()+QueMes
    if (now.getMonth()+QueMes > 11) {mes-=12;anio++}
    if (now.getMonth()+QueMes < 0) {mes+=12;anio--}
    if (mes == 0){
            document.getElementById("anterior").disabled = true;
        }
        else
            document.getElementById("anterior").disabled = false;
        if (mes == 11){
            document.getElementById("siguiente").disabled = true;
        }
        else{
            document.getElementById("siguiente").disabled = false;
        }
    var fecha = now.getDate()
    var primerDia = new Date(anio, mes, 1)
    var primerDia2 = primerDia.getDay()
    primerDia = null
    var dias = diasPorMes(mes+1, anio)
    drawCal(primerDia2, dias, fecha, mes+1, anio)
}

function drawCal(firstDay, lastDate, date, Mes, Anio) {
    var now = new Date()
    var codigo = ""
    codigo += '<table class="tabla">'
    codigo += '<tr><td class="encabezado" colspan="7">'
    codigo += getNombreDelMes(Mes) + ' ' + Anio 
    codigo += '</td></tr>'

    var diasSemana = new Array(7)
    diasSemana[0] = "<acronym title=\"Lunes\">L</acronym>"
    diasSemana[1] = "<acronym title=\"Martes\">M</acronym>"
    diasSemana[2] = "<acronym title=\"Miercoles\">M</acronym>"
    diasSemana[3] = "<acronym title=\"Jueves\">J</acronym>"
    diasSemana[4] = "<acronym title=\"Viernes\">V</acronym>"
    diasSemana[5] = "<acronym title=\"Sabado\">S</acronym>"
    diasSemana[6] = "<acronym title=\"Domingo\">D</acronym>"

    codigo += '<tr>'
    for (var dayNum = 0; dayNum < 7; ++dayNum) {
        codigo += '<td class="celdaDiaSemana">' + diasSemana[dayNum] + '</td>' 
    }
    codigo += '</tr>'

    var cDia = 1
    var curCell = 1

    for (var row = 1; row <= Math.ceil((lastDate + firstDay - 1) / 7); ++row) {
        codigo += '<tr>'
        for (var col = 1; col <= 7; ++col) {
            if (cDia > lastDate)
                break
            if (curCell < firstDay) {
                codigo += '<td></td>';
                curCell++
            } else {
                var textoCelda = cDia;
                var textoTd = '<td class="celda">'

                var descripcion = "";
                for (i=0;i<xmlCalendario.length;i++){
    
                    var fecha = xmlCalendario[i].getAttribute('fecha');
        
                    var sDia = "";
                    var sMes = "";
                    if (cDia < 10){
                        sDia = "0";
                        sDia += cDia;
                    }else{
                        sDia = cDia;
                    }
                    if (Mes < 10){
                        sMes = "0";
                        sMes += Mes;
                    }
                    else{
                        sMes = Mes;
                    }
                    
                    if (fecha == sDia+ "-" + sMes + "-" + Anio){
                        var titulo = xmlCalendario[i].getAttribute('titulo');
                        descripcion += "- "  + xmlCalendario[i].getAttribute('titulo');
                        descripcion += "\\n";
                        textoCelda = '<a href="#" class="diacita" onclick="alert(\''+descripcion+'\');return false;" >' + cDia + '</a>';
                        textoTd = '<td class="celdacita">'
                    }
                }

                
              
                if (parseInt(cDia) == parseInt(date) && parseInt(Mes) == parseInt(now.getMonth() + 1)) {
                    textoTd = '<td class="hoy">'
                }

                codigo += textoTd + textoCelda + '</td>'
                cDia++
            }
        }
        codigo += '</tr>'
    }

    codigo += '</table>'
    document.getElementById("boxcalendario").innerHTML=codigo;
}

